The present invention relates, in general, to facilitating communications in a multi-partitioned computing environment, and more particularly, to assigning unique address identifiers to partitions within such an environment.
Providing appropriate access to an input/output (I/O) device depends, in part, on knowing the precise source of an I/O command. For example, an I/O device that reserves its resources for exclusive use by a single logical partition (LPAR) needs to know whether an I/O command is sent from that particular LPAR. Under the Fibre Channel/SCSI (FCP) protocol, the source of a command sent from one LPAR of multiple LPARs supported by a host server channel adapter is the address identifier of the adapter""s N_Port through which the command passes. Thus, commands from any of the multiple LPARs would have the same source address (i.e., the N_Port Address Identifier, or N_Port ID). This lack of unique identification accompanying a command prevents the destination (e.g., the I/O device) from knowing the precise source and, for example, adjusting access to its resources accordingly.
One way to provide unique N_Port IDs to each partition would be to include multiple channel adapters on the host server, sufficient to allow each LPAR to be associated with its own N_Port. Unfortunately, since it is not uncommon for a host server to have more than one thousand LPARs, the expense of providing a similar number of physical adapter cards makes this solution impractical.
There are other protocols which result in an N_Port having more than one ID, such as when an N_Port receives multicast frames (sent to a multicast address) as well as frames sent to its own N_Port address. These other protocols are specifically designed for unique purposes (such as multicast), and have limitations which result from the specific function provided. For example, multicast addresses are shared by all N_Ports in the multicast group, but an address used by a logical partition must only be usable by that logical partition.
Another potential method of obtaining another N_Port ID could be achieved by allowing the N_Port to log in multiple times with the fabric, but this would require initialization of flow-control buffers, and would therefore disrupt the operation of preexisting N_Ports with other N_Port IDs.
There thus remains a need in the art for an enhanced technique of providing, for example, a single physical N_Port with multiple address identifiers in order to allow each LPAR sharing the N_Port its own unique address identifier.
The shortcomings of the prior art are overcome and additional advantages are provided through the provision of a method for assigning an address identifier to a partition of a computing environment. The method includes, for instance, receiving, at an alias server of a fabric of the computing environment, a request sent by a partition to initiate assignment of an address identifier; responsive to receiving the request, obtaining, by the alias server, an alias address uniquely identifying a single-member hunt group to be associated with the partition sending the request; and forwarding the alias address from the alias server to the partition sending the request, thereby providing the partition with a single-member hunt group uniquely identified by the alias address and associated with the partition to be used in future communications, wherein the alias address comprises an address identifier for the partition.
Systems and computer program products corresponding to the above-summarized methods are also described and claimed herein.
Additional features and advantages are realized through the techniques of the present invention. Other embodiments and aspects of the invention are described in detail herein and are considered a part of the claimed invention.